<?php
include_once('controller/C_Base.php');
include_once('model/M_Articles.php');
/** 
 *  @author VGireev 
 *	@REVISION:  $Id: C_Articl.php 11 2011-12-18 12:52:37Z host.xserver@gmail.com $
 *  @brief Файл класса C_Articl
 *  © myCompany 2011
 *
 *  контроллер вынимает 10 статей из БД
 *  и выводит краткое содержание статей
 */
class C_Articl extends C_Base 
{
	private $article;	// массив статей
	public 	$number;	//id статьи с которой нужно вынимать очередные 10 статей
/* ===================================================================== */	
    // конструктор.
    function __construct() 
    {
		$this->article = array();
    	parent::__construct();
    	
    }
/* ===================================================================== */		
    // виртуальный обработчик запроса
    protected function OnInput() 
    {
		// C_Base.
		parent::OnInput();
		// менеджер статей
		$mArticles = M_Articles::Instance();
		//если пришол post массив
		//внимаем id статьи с которой
		//нужно вынимать следующие 10 статей
		//если post массив пуст тогда
		//вынимаем 10 статей начиная с 1-й статьи
		if ($this->IsPost()) {
			$number = $_POST['number'];
		}
		//вынимаем статьи из базы	
		$this->article = $mArticles->Get10($number);
		//в переменную s записываем кол-во записей 
		$s= count($this->article[0]);
		$s--;
		//проходим по всему массиву записей
		//и обрезаем содержимое статьи до 250 знаков
		for ($i=0; $i<$s; $i++) {
            $temp = $this->article[0][$i];
			$this->article[$i]['article'] = stripslashes($this->article[$i]['article']);
			$temptext = wordwrap($this->article[$i]['article'], 250, "||", true);
			$temptext = explode("||", $temptext);
			$this->article[$i]['article'] = $temptext[0];
        };
    }
/* ===================================================================== */		
    // виртуальный генератор HTML.
    protected function OnOutput() 
    {   	
		// менеджеры.
		$mUsers = M_Users::Instance();
		// Шаблон меню
		//выборка либо меню для юзера либо меню админа
		if ($mUsers->Can('USE_SECRET_FUNCTIONS')) {
			$vars_menu = array('items' => C_Base::GetMenuItems(true));
		}
		else {
			$vars_menu = array('items' => C_Base::GetMenuItems(false));
		}
    	$this->menu = $this->View('/view/tpl_menu.php', $vars_menu);
        // Основной шаблон страницы
		$s=$this->article;
		for ($i=0; $i<count($s); $i++) {
			$temp = $s[$i];
        	$vars_content = array('title' => $temp['title'],
								  'article' => $temp['article'],
								  'id' => $temp['id_article']
								 );
    		$this->content .= $this->View('/view/tpl_articls.php', $vars_content);
		};
		$vars_content = array('number' => $number);
    	$this->content .= $this->View('/view/tpl_btn.php', $vars_content);
		$this->title_page = 'Статьи';
		// C_Base.
        parent::OnOutput();
    }
/* ===================================================================== */		
}